home *** CD-ROM | disk | FTP | other *** search
/ ShareWare OnLine 2 / ShareWare OnLine Volume 2 (CMS Software)(1993).iso / games1 / app200.zip / APP.DOC < prev    next >
Text File  |  1993-02-28  |  20KB  |  481 lines

  1.  
  2.                             Approach Control
  3.                                Version 2.0
  4.  
  5.                      A Pre-compiler for the Microsoft
  6.                        Flight Simulator Aircraft and
  7.                             Adventure Factory
  8.  
  9.                         (c) 1993 by John Mechalas
  10.  
  11.  
  12. This program is shareware.  It may be distributed freely provided that
  13. it is not modified in any way, and that all the accompanying files
  14. in this archive are distributed with it.
  15.  
  16.  
  17. - Introduction -
  18.  
  19. Probably the most useful application that I have found for the Aircraft
  20. and Adventure Factory is the simulation of Air Traffic Control.  I have
  21. created adventures that would simulate approach control for various
  22. airports across the country, and would serve the purpose of providing
  23. the necessary heading vectors needed to line up my aircraft for
  24. instrument approaches.
  25.    Unfortunately, I found the coding of the necessary "fixes" and commands
  26. to be a tedious process, but since the basic command structure of the AAF
  27. file was roughly the same all the time, I was able to come up with a
  28. program that could automatically generate the necessary source code for
  29. the AAF compiler, with only a minimum of input and effort.
  30.    Approach Control reads a data file that contains basic airport
  31. location and runway information and creates the source code necessary
  32. for AAF to compile an adventure file.  With this program, you can create
  33. an approach control simulator within (literally) a matter of seconds,
  34. instead of the hours that it would take to code manually.  And, absolutely
  35. no programming is necessary.
  36.    After compiling the resulting source code with Adventure Factory's
  37. AFF.EXE program, you are ready to go.  If you want to fly into Indianapolis
  38. International Airport, for example, you simply load your adventure file
  39. containing the data for Indy's airport into Flight Simulator, then start
  40. flying.  Once you are within 40 miles of the airport, you would be told
  41. to contact Indianapolis Approach, and approach control would proceed to
  42. vector you in for an instrument approach on the runway favored by the
  43. local surface winds.
  44.  
  45.  
  46. - What You Need -
  47.  
  48. Naturally, you will have to have both Microsoft Flight Simulator version
  49. 4.0 and the Aircraft and Adventure Factory.  Until Flight Simulator version
  50. 5.0 is released (whenever that will be), I can make no guarantees as to
  51. whether or not the adventure files created by this program will work with
  52. v5.0, since I can not predict whether or not the Flight Simulator variables
  53. I make use of in this program will become obsolete.
  54.    It is also recommended that you have the Aircraft and Scenery Designer.
  55. Without it, you will only have the ILS approaches available on scenery
  56. disks, which will limit the usefulness of any adventure files created
  57. by this program.  With A&SD, you can provide full ILS support at each
  58. airport, and hence a corresponding adventure file to vector you in for
  59. a final approach.
  60.    All communications generated by the resulting adventure file will be
  61. printed to the screen, so you won't need a special sound card to make use
  62. of the adventures-- I tried to make the program as universal as I could.
  63. However, if you do own a sound card, I have added the option of playing
  64. recorded/digitized speech in addition to printing the ATC commands.  The
  65. APP.EXE program will ask if you wish to include speech in your adventure,
  66. so if you do not have a sound card, or don't care for the recorded voices,
  67. simply answer "no".
  68.  
  69.  
  70. Section 0:  Quick Start
  71.  
  72.    If you want to get started quickly and test out the sample adventure
  73. (OHARE.APP), just type APP and when asked for the input file, enter
  74. OHARE.  APP will then create a file called OHARE.AAF ... Simply compile
  75. this using the AAF compiler by typing AAF OHARE.AAF OHARE.ADV.  You will
  76. now have an adventure file titled "OHARE.ADV" in your directory which
  77. you can now load and run from Flight Simulator.  (A good flight for
  78. this adventure would be from Kankakee Airport to O'Hare International).
  79.  
  80.  
  81. Section 1:  Running the Program
  82.  
  83.  
  84. 1.1 Creating the Airport File
  85.  
  86.    In order to build an adventure file, APP needs to read in an input
  87. file that contains the necessary airport information.  When you first
  88. run the program, APP will ask you for the name of that input file,
  89. which must have a .APP extension.  If the file does not exist, you
  90. will be asked if you want to create it.  At this point, you can
  91. enter "y" to go to the file creation utility.
  92.    Here, you will be asked several questions about the airport which
  93. you wish to model approach control for.  The best way to explain the
  94. process is by example, so we will "build" a sample file for Willard
  95. Airport in Champaign, Urbana (this airport is supported by the FS4.0
  96. default scenery, so you can test your file after we are done).  Another
  97. sample input file, already created for you, is included in this package
  98. that covers Ohare Airport in Chicago.
  99.    Any lines beginning with a '>' are responses from the APP.EXE
  100. program.  Entries in capital letters are meant for you to enter in
  101. response to the questions that APP will ask you.
  102.  
  103. >    C:\FLTSIM> APP.EXE
  104. >
  105. >    Approach Control Version 2.0
  106. >    A Pre-Compiler for the Microsoft
  107. >    Flight Simulator Aircraft and
  108. >    Adventure Factory
  109. >
  110. >       Enter input filename: WILLARD
  111.  
  112. You do not need to add the .APP extension...the program will do that
  113. for you.  In fact, due to teh string-handling routines I used, if
  114. you enter a name greater than 8 characters, or with an extension of
  115. your own, you may get some bizarre results.
  116.  
  117. >    File does not exist.  Do you wish to create it? Y
  118. >
  119. >    Is there a control tower at this airport? Y
  120.  
  121. Willard has an active control tower.  If we had answered "N" to this
  122. question, the program would have you contact Willard Unicom instead 
  123. of Willard Tower when appropriate.
  124.  
  125. >    Enter airport name (eq "Ohare"): WILLARD
  126. >       Enter Willard tower or unicom radio frequency:  120.40
  127.  
  128. The airport name is Willard, and the radio frequency of the Willard
  129. tower is 120.40.  Not that you wouldn't really want to enter the
  130. name in all CAPS like above.  This is only done to help clarify the
  131. data entry process as described above.
  132.  
  133. >    Enter approach control name (eq "Chicago"): CHAMPAIGN
  134. >       Enter Champaign approach radio frequency:  121.35
  135.  
  136. Note that the name of approach control is not necessarily the same as
  137. the airport tower.  This is particularly the case at small airports
  138. that are near major facilities.  In this case, Willard is under 
  139. Champaign APproach Control, and the radio frequency is 121.35.
  140.  
  141. >    Is this correct? Y
  142.  
  143. If we enter "N", we will re-enter all of the above information.
  144.  
  145. >    Enter airport NORTH coordinate:  16400
  146. >       Enter airport EAST coordinate:  16465
  147.  
  148. Here we need to tell APP where the airport is located in the FS world.
  149. Simply enter the FS coordinates given in your scenery disk info sheets.
  150. These values MUST be integers, so round them off to the nearest whole
  151. number.  If you enter a floating-point number, you may get some very
  152. bizarre results.
  153.  
  154. >    Is this correct? Y
  155.  
  156. Gives you a chance to correct errors in the airport location.
  157.  
  158. >    Enter first altitude assignment:  4000
  159. >    Enter second altitude assignment:  2600
  160.  
  161. ATC will assign you to a certain altitude when you are a given distance
  162. from the airport.  The first altitude assignment is given at about 30 NM
  163. and the second is given at 15 NM.  You will want the first altitude
  164. to be higher than the second, and both must be integer values.
  165.  
  166. >    Is this correct? Y
  167.  
  168. Enter "Y" or "N" as needed.
  169.  
  170. >    Enter the magnetic variation (positive values for east,
  171. >       negative values for west variation):  0
  172.  
  173. Here we tell APP what the local magnetic variation is.  The best way to
  174. determine the variation is to enter SLEW mode in FS4.0 and hit both
  175. ALT keys simultaneously.  This will turn your aircraft so that it 
  176. points to true north.  Next, simply read off the value showing in your
  177. magnetic compass.  If the compass shows a number from 0 to 180 degrees,
  178. variation is west.  If the compass reads from 180 to 360 degrees, then
  179. variation= 360 - compass east.  (eg:  If your compass reads 358 degrees,
  180. the magnetic variation is 2 degrees east).  West variation should be
  181. entered as a negative number, so if variation is 4 degrees west, enter
  182. -4 in response.
  183.    This number must also be an integer, so round off to the nearest whole
  184. number.  At Champaign, variation is roughly 0.1 degrees East, so we'll
  185. enter 0 degrees.
  186.  
  187. >    Is this correct? Y
  188.  
  189. Self-explanatory.
  190.  
  191. >    How many instrument approaches? 4
  192.  
  193. Willard airport has six runways, but only four of them have published
  194. instrument approaches.  This tells APP how many approaches we are going
  195. to enter.
  196.  
  197. >    Is this correct? Y
  198.  
  199. To correct your mistakes.
  200.  
  201. >    Enter runway number: 4
  202. >       Enter runway/approach heading: 54
  203. >       ILS, LOC, VOR, or NDB approach? VOR
  204.  
  205. Now we begin entering the approach information.  There's a lot to digest
  206. here, so we'll try to take it in slowly.
  207.    First, we have to tell APP which runway we are entering data for.  At
  208. the present time, all runway information has to be entered in ASCENDING
  209. NUMERICAL ORDER.  Also, APP does not currently differentiate between
  210. Left, Center, and Right runways.  So, if your airport has both a 4L and
  211. a 4R approach, you should only enter runway 4 once.  Whether you choose
  212. to land on 4L or 4R during flight is up to you, though if one runway has
  213. a higher-precision approach, you will probably want to simulate it (the
  214. highest precision approaches are ILS, followed by LOC, VOR, and NDB
  215. approaches, in that order).
  216.    A good example of this is the example OHARE.APP file.  Ohare has
  217. parallel runways for every instrument approach.  Runway 4R features an
  218. ILS approach, and 4L an LOC approach.  Since the ILS is a higher-
  219. precision system, runway 4 is entered as an ILS approach.
  220.    The published instrument approach procedures can be found in both
  221. NOAA Terminal Approach Procedure plates or the Jeppsen plates, both of
  222. which are probably available at your local airport.
  223.    ILS systems transmit both localizer and glideslope information.  By
  224. tuning the ILS frequency on your NAV radio, you follow both the localizer
  225. and the glideslope down to the runway.
  226.    An LOC system consists of a localizer beacon only, and does not transmit
  227. any glideslope information.
  228.    In a VOR approach, you tune in a radial for the airport's VOR beacon
  229. and follow that radial in until you can visually line yourself up for a
  230. landing.  The heading of the runway does not necessarily match that of
  231. the approach radial.
  232.    For NDB approaches, you track the given non-directional beacon with your
  233. ADF guage.  When you intersect the NDB, you turn to a certain heading and
  234. follow it in until you can visually line up with the runway as in a VOR
  235. approach.
  236.    At Willard, runway 4 is supported with a VOR approach (in this case,
  237. you track radial 54 of the CMI VOR on 110.00).
  238.    Note that the approach type must be entered in all CAPS, so if you enter
  239. "ils" instead of "ILS", the program will prompt you to re-enter.
  240.  
  241. >    Enter runway number: 14
  242. >    Enter runway/approach heading: 136
  243. >       ILS, LOC, VOR, or NDB approach: LOC
  244. >
  245. >       Enter runway number: 22
  246. >       Enter runway/approach heading: 207
  247. >    ILS, LOC, VOR, or NDB approach: VOR
  248. >
  249. >    Enter runway number: 32
  250. >    Enter runway/approach heading: 316
  251. >    ILS, LOC, VOR, or NDB approach: ILS
  252. >
  253. >
  254. >    Runway 4:  VOR heading 54 degrees
  255. >    Runway 14:  LOC heading 136 degrees
  256. >    Runway 22:  VOR heading 207 degrees
  257. >    Runway 32:  ILS heading 316 degrees
  258. >
  259. >    Is this correct? Y
  260.  
  261. The rest of the approach information.
  262.    After answering "Y", to confirm that all information has been entered
  263. correctly, the program will write a data file called WILLARD.APP to the
  264. current directory.  It will then proceed to create the WILLARD.AAF file
  265. from the information in the .APP file.
  266.  
  267.  
  268. 1.2 The APP.EXE Pre-Compiler
  269.  
  270.    Once you have created or read in a valid input file, the APP program
  271. will begin generating the source code for the AAF compiler.  Some
  272. information will be printed to the screen, and you will be prompted if
  273. you want to include the digitized speech in your adventure program.
  274.  
  275. >    Do you want digitized speech in your adventure file? N
  276.  
  277. If you want digitized speech, enter "Y".  Check your AAF manual for
  278. hardware requirements.
  279.  
  280. >    Variation is 0 degrees.
  281. >    4 runways.
  282. >    4 54
  283. >    14 136
  284. >    22 207
  285. >    32 316
  286.  
  287. Here, the runway information is printed back as a For Your Information
  288. feature.  It confirms that your runway data has been read properly.  Note
  289. that the runway headings are adjusted according to the magnetic variation.
  290.  
  291. >        54    5    95
  292. >        136    95    171
  293. >        207    171    261
  294. >        316    261    5
  295.  
  296. Here, the runway headins are printed along with the boundaries for runway
  297. selection according to the local winds.  If, for example, the surface winds
  298. were between 5 and 95 degrees, you would be vectored to land on runway
  299. 4, which has an approach heading of 54 degrees.
  300.    Again, this is an FYI listing, only.
  301.    After this point, the program will complete in a manner of seconds, and
  302. you will have a file called WILLARD.AAF in your current directory.  You
  303. can now compile it using the AAF.EXE program.
  304.  
  305.  
  306. Section 2:  Compiling Your Adventure Program
  307.  
  308.    To compile your program, simply follow the procedure as given in your
  309. AAF manual.  In our above example, we would type:
  310.  
  311. >    C:\FLTSIM> AAF WILLARD.AAF WILLARD.ADV
  312.  
  313. If, however, you are lazy like me, then you can instead use the batch file
  314. AF.BAT that is included in this archive.  Simply type:
  315.  
  316. >    C:\FLTSIM> AF WILLARD
  317.  
  318. This is equivalent to the full command line given above.  The syntax is as
  319. follows:
  320.  
  321.     AF <infile>
  322.  
  323. This is equivalent to typing:
  324.  
  325.     AAF <infile>.AAF <outfile>.ADV
  326.  
  327.  
  328.  
  329. Section 3:  The Input File
  330.  
  331.   APP.EXE reads an input file that you create and turns it into source
  332. code for the Aircraft and Adventure Factory.  A sample input file,
  333. OHARE.APP, is provided in this archive to help you understand the
  334. structure of the input file, as well as give you an sample adventure to
  335. experiment with (O'Hare airport at Chicago is available on the FS4 default
  336. scenery, and provides full ILS support.  It was included as a sample file
  337. so that anyone could use the it, since not all of us have scenery disks or
  338. the Scenery Designer).  It is compatible with the FS4.0 default scenery.
  339.    The structure of the file is outlined below, and I will explain the
  340. OHARE.APP input file in detail so that it is easier to understand the format.
  341. Quite a few changes have occurred between Approach Control versions 1.0 and
  342. 2.0, so if you have the previous version, you will want to check out the
  343. WHATS.NEW file included in this archive.
  344.  
  345.  
  346. 3.1: File Format for .APP input files.
  347.  
  348. Line 1 (Airport location):
  349.  
  350.    NORTH and EAST coordinates, seperated by a space.  Both must be integers.
  351.  
  352. Line 2 (Approach control frequency and name): 
  353.  
  354.    Radio frequency of approach control, followed by the name, seperated
  355.  by a space.
  356.  
  357. Line 3 (Tower frequency and name):
  358.  
  359.    Frequency of airport tower or unicom, followed by the tower "flag",
  360.  and then the airport name; all seperated by a space.  The tower flag is
  361.  either 0 or 1, and is defined as follows--
  362.  
  363.     0 -- No tower at the airport.  Use Unicom.
  364.     1 -- Airport has a tower.
  365.  
  366. Lines 4-6 (Distance from airport to "fixes"):
  367.  
  368.    These are default values given by the program.  You should not need
  369.  to change them unless you find that ATC vectors you through a mountain
  370.  or something.  By changing the numbers here, you change the distance
  371.  from the airport to the various "fixes" that ATC vectors you to during
  372.  your approach.  These can be floating-point numbers.
  373.  
  374. Lines 5-7 (Angles for "fixes" with respect to runway headings):
  375.  
  376.    Again, these are default values that you should not have to change.
  377.  They represent the angles between the runway and the various fixes
  378.  described above.  These can be floating-point numbers, and are given
  379.  in FS Units (1 NM = 7.2 FS Units).
  380.  
  381. Lines 8-9 (Altitude assignments)
  382.  
  383.    Here is where the altitude assignments are stored.  The first number
  384.  is the altitude, and the second is the distance from the airport at which
  385.  the altitude assignment is given.  All numbers are integers.
  386.  
  387. Line 10 (Magnetic Variation):
  388.  
  389.    Magnetic variation.  + for east, - for west.  Must be an integer.
  390.  
  391. Lines 12 - ?? (Runway information)
  392.  
  393.    Here is where the runway information is stored.  The first is the ruway
  394.  number, the second is the runway heading, and the third is a flag denoting
  395.  the approach type.  All numbers are integers, and the flag is defined as
  396.  follows:
  397.  
  398.     1 -- ILS approach
  399.     2 -- LOC
  400.     3 -- VOR
  401.     4 -- NDB
  402.  
  403.  
  404. 3.2: The OHARE.APP Sample File
  405.  
  406. The first line of the input file describes the location of the airport
  407. in FS units.  For O'Hare, the location is 16244N and 16578 E.
  408.  
  409.  17244 16578
  410.  
  411. The second line tells the compiler what frequency approach control uses
  412. for communication, along with the name of that approach control center.
  413. Note that the airport name and approach control name are not necessarily
  414. the same.
  415.  
  416.  119.00 Chicago
  417.  
  418. Line three gives the tower frequency of the airport's ATC tower, along
  419. with it's name.  The "1" denotes that there is a tower available at the
  420. airport.
  421.  
  422.  126.90 1 O'Hare
  423.  
  424. The next six lines define the locations of the various "fixes" that
  425. ATC guides you into during your approach.  These numbers should not
  426. have to be changed, but I am allowing you to do so if you wish.  For
  427. the most part, however, the numbers given in the OHARE file will work
  428. well for almost all airports.
  429.    Looking at the OHARE file, we can see that the fixes are located
  430. roughly 88, 132, and 171 FS units from the airport, and are at angles
  431. of 18, 45, and 89 degress to the runway heading.  (This is a difficult
  432. concept to explain, but since you shouldn't need to change any of these
  433. numbers, I won't bore you with the gory details).
  434.  
  435.   87.5322
  436.  132.4499
  437.  171.4833
  438.   17.7435
  439.   45.2737
  440.   88.6013
  441.  
  442. At certain distances from the tower, your aircraft should be assigned
  443. lower altitudes to prepare you for your approach.  The next two lines
  444. define what the new altitude assignment is, and at what distance
  445. from the airport (in miles) they are given.  Although you probably
  446. shouldn't have to change the distance at which a new assignment is
  447. given, the actual assigned altitudes themselves will have to be adjusted
  448. according to the local ground level.
  449.    In the OHARE file, an altitude of 5000 feet is assigned at 30 miles
  450. from the airport, and an altitude of 2700 feet is assigned at 15 miles.
  451.  
  452.   5000 30
  453.   2700 15
  454.  
  455. The magnetic variation is about 1 degree west, so we enter a -1 on the 
  456. next line.
  457.  
  458.   -1
  459.  
  460. Here is where you tell the program how many runways you have.  At O'Hare,
  461. we have six.  Note that the current version of Approach Control does not
  462. distinguish between left, right, or center runways.  If there is a
  463. runway 19R and 19L, simply enter runway 19 once, and when you are vectored
  464. to land on runway 19, you can choose either the left or right runway as
  465. you see fit.
  466.  
  467.   6
  468.  
  469. Here we enter the runway data.  The first number is the actual runway
  470. number, and the second number defines the runway heading.  Again, as
  471. mentioned above, the current version of Approach Control does not
  472. distinguish between left, right, and center runways.  All runways are
  473. ILS supported, so each has the "flag" set to "1".
  474.  
  475.  4 42 1
  476.  9 90 1
  477.  14 140 1
  478.  22 222 1
  479.  27 270 1
  480.  32 320 1
  481.